package com.spotmanger.project.modular.spotfile.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.spotmanger.project.modular.spotfile.entity.EasyfileChunk;
import com.spotmanger.project.modular.spotfile.entity.EasyfileEntity;
import org.springframework.web.multipart.MultipartFile;


/**
 *
 * @author leihao
 * @date 2020年12月24日
 * @version 1.0
 * @description
 */
public interface IEasyfileService extends IService<EasyfileEntity> {

	/**
	 * 分页查询文件信息
	 * @param query
	 * @return
	 */
//	List<EasyfileEntity> selectEasyfileEntityList(Query<EasyfileEntity> query);
	/**
	 * 分片文件上传
	 * @param chunkFile		分片文件
	 * @param easyfileChunk	分片信息
	 * @param baseDir		上传物理路径
	 */
	EasyfileChunk easyfileUpload(MultipartFile chunkFile, EasyfileChunk easyfileChunk, String baseDir);

	/**
	 * 分片文件合成
	 * @param easyfileChunk
	 * @param baseDir
	 * @return
	 */
	EasyfileEntity easyfileMerge(EasyfileChunk easyfileChunk, String baseDir);

	/**
	 * 删除分片文件
	 * @param easyfileChunk
	 */
	void removeEasyfileChunk(EasyfileChunk easyfileChunk);

	/**
	 * 根据ID查询文件信息
	 * @param id
	 * @return
	 */
	EasyfileEntity selectEasyfileEntityById(String id);

	/**
	 * 删除文件
	 * @param ids
	 */
	void deleteEasyfileEntityByIds(String[] ids);

}
